﻿using AccesoData.Fabricas;
using AccesoData.Interfaces;

namespace AccesoData
{
    public abstract class DAO
    {

        public static DAO ObtenerFabrica(int opcion)
        {
            switch (opcion)
            {
                case 1: 
                    return new DaoMySql();
                case 2:
                    return null;
                case 3:
                    return null;

                default :
                    return null;
            }
            
        }

        public abstract IDAOLugar ObtenerDaoLugar();
        public abstract IDAOAseguradora ObtenerDaoAseguradora();
        public abstract IDAOSucursal ObtenerDaoSucursal();
        public abstract IDAOCliente ObtenerDaoCliente();
        public abstract IDAOPersonal ObtenerDaoPersonal();
        public abstract IDAOPoliza ObtenerDaoPoliza();
        public abstract IDAORamo ObtenerDaoRamo();
        public abstract IDAORecaudo ObtenerDaoRecaudo();
        public abstract IDAORecaudoRamo ObtenerDaoRecaudoRamo();
        public abstract IDAORecaudoInspeccion ObtenerDaoRecaudoInspeccion();
        public abstract IDAODetalleEstimado ObtenerDaoDetalleEstimado();
        public abstract IDAOSiniestro ObtenerDaoSiniestro();
        public abstract IDAOInspeccion ObtenerDaoInspeccion();
    }

}
